验证数据

测试域和数据文件的错误

要验证域文件,NLU数据或故事数据中是否存在任何错误,请运行验证脚本。你可以使用以下命令运行它:

rasa data validate

上面的命令运行会验证所有的问及那。以下是命令的一次选项:

用法: rasa data validate [-h] [-v] [-vv] [--quiet] [-d DOMAIN] [--data DATA]

可选参数: 
 -h, --help     显示帮助消息并退出。
 -d DOMAIN, --domain DOMAIN
                域规范(yml文件)。(默认:domain.yml)
--data DATA     包含Rasa数据的文件或目录。(默认:data)  

Python日志选项:
 -v, --verbose  详细输出。将日志记录级别设置为INFO。(默认:None)
 -vv, --debug   打印大量的调试语句。设置日志记录级别为 DEBUG。(默认:None)
 --quiet        将日志记录级别设置为WARNING。(默认:None) 
 ```

 你还可以通过python API导入Validator类来运行这些验证,该类具有以下方法:

 **from_files()**:根据必要的文件字符串路径创建实例。

 **verify_intents()**:检查域文件中列出的意图是否与NLU数据一致。

 **verify_intents_in_stories()**:验证故事中的意图,检查它们是否有效。

 **verify_utterances()**:检查域文件在话语模板和操作下列出的话语之间的一致性。

 **verify_utterances_in_stories()**:验证故事中的话语,检查它们是否有效。

 **verify_all()**:运行上面的所有验证。

 要使用这些函数,必须创建Validator对象并初始化记录器。请参阅以下代码:
 ```python
 import logging
from rasa import utils
from rasa.core.validator import Validator

logger = logging.getLogger(__name__)

utils.configure_colored_logging('DEBUG')

validator = Validator.from_files(domain_file='domain.yml',
                                 nlu_data='data/nlu_data.md',
                                 stories='data/stories.md')

validator.verify_all()